package com.cndw.kungfu.model.battle;

import java.io.Serializable;

import com.cndw.kungfu.ext.NumberProcesser;

public class FighterBaseCross extends FighterBase implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 236915469333895172L;

	protected long uniqueId;
	protected String name;
	protected int hp;
	protected int mp;
	protected int maxHp;
	protected int maxMp;
	protected int attack;
	protected int defense;
	protected int hit;
	protected int dodge;
	protected int crit;
	protected int tough;
	protected int speed;
	/**
	 * 伤害追加
	 */
	protected int hurtAdd;
	/**
	 * 伤害减免
	 */
	protected int hurtRemove;
	/**
	 * 伤害反射
	 */
	protected int hurtReflex;
	/**
	 * 伤害吸收
	 */
	protected int hurtAbsorb;
	/**
	 * 暴击追加
	 */
	protected int critAdd;
	/**
	 * 等级
	 */
	protected int level;

	public long getUniqueId() {
		return uniqueId;
	}

	public void setUniqueId(long uniqueId) {
		this.uniqueId = uniqueId;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getHp() {
		return hp;
	}

	public void setHp(int hp) {
		this.hp = hp;
	}

	public int getMp() {
		return mp;
	}

	public void setMp(int mp) {
		this.mp = mp;
	}

	public int getMaxHp() {
		return maxHp;
	}

	public void setMaxHp(int maxHp) {
		this.maxHp = maxHp;
	}

	public int getMaxMp() {
		return maxMp;
	}

	public void setMaxMp(int maxMp) {
		this.maxMp = maxMp;
	}

	public int getAttack() {
		return attack;
	}

	public void setAttack(int attack) {
		this.attack = attack;
	}

	public int getDefense() {
		return defense;
	}

	public void setDefense(int defense) {
		this.defense = defense;
	}

	public int getHit() {
		return hit;
	}

	public void setHit(int hit) {
		this.hit = hit;
	}

	public int getDodge() {
		return dodge;
	}

	public void setDodge(int dodge) {
		this.dodge = dodge;
	}

	public int getCrit() {
		return crit;
	}

	public void setCrit(int crit) {
		this.crit = crit;
	}

	public int getTough() {
		return tough;
	}

	public void setTough(int tough) {
		this.tough = tough;
	}

	public int getSpeed() {
		return speed;
	}

	public void setSpeed(int speed) {
		this.speed = speed;
	}

	public int getHurtAdd() {
		return hurtAdd;
	}

	public void setHurtAdd(int hurtAdd) {
		this.hurtAdd = hurtAdd;
	}

	public int getHurtRemove() {
		return hurtRemove;
	}

	public void setHurtRemove(int hurtRemove) {
		this.hurtRemove = hurtRemove;
	}

	public int getHurtReflex() {
		return hurtReflex;
	}

	public void setHurtReflex(int hurtReflex) {
		this.hurtReflex = hurtReflex;
	}

	public int getHurtAbsorb() {
		return hurtAbsorb;
	}

	public void setHurtAbsorb(int hurtAbsorb) {
		this.hurtAbsorb = hurtAbsorb;
	}

	public int getCritAdd() {
		return critAdd;
	}

	public void setCritAdd(int critAdd) {
		this.critAdd = critAdd;
	}

	public int getLevel() {
		return level;
	}

	public void setLevel(int level) {
		this.level = level;
	}

	public synchronized void alterHp(int alter) {
		int newHp = NumberProcesser.between(alter + getHp(), 0, getMaxHp());
		hp = newHp;
	}

	public synchronized void alterMp(int alter) {
		int newMp = NumberProcesser.between(alter + getMp(), 0, getMaxMp());
		mp = newMp;
	}
	public int getSceneId(){
		return 0;
	}
	
	public void fullHpMp(){
		hp = maxHp;
		mp = maxHp;
	}

}
